# 官网参考属性：https://docs.python.org/zh-cn/3/library/logging.html#logrecord-attributes


""" logging  日志格式的定制 """

import logging


# 1、得到一个日志收集器  logger
# 要写日志/日记 需要有：笔记本，笔，日记内容
# logger ---> 笔 专门去记录 class17的运行日志 （ class17标签，不是文件名）
logger = logging.getLogger("automation05")
logger.setLevel("WARNING")

# # 下面记录出来的还是默认级别的
# logger.info("这是一个 info 级别的日志")
# logger.warning("这是一个 warning 级别的日志")
# logger.error("这是一个 error 级别的日志")

# 2、设置日志的记录的位置，笔记本 or 黑板  or 墙壁
# StreamHandler，默认的笔记本，即输出到控制台
stream_Handler = logging.StreamHandler()
# # --》设置日志级别
stream_Handler.setLevel('INFO')
# ---》设置格式的格式化
fmt = logging.Formatter(style="{",
                        fmt="{asctime}  {name}  {levelname}  {lineno}  {message}")
stream_Handler.setFormatter(fmt)
# 3、把笔和笔记本绑定到一起
logger.addHandler(stream_Handler)
#
# 3.2 另一个handler.将日志输出到文件
file_handler = logging.FileHandler("huile.log", encoding="utf-8")
# --》设置日志级别
file_handler.setLevel('INFO')
# ---》设置格式的格式化
fmt2 = logging.Formatter("%(asctime)s ------- %(levelname)s ------- %(name)s  --------- %(message)s ")
file_handler.setFormatter(fmt2)
# logger（笔） 可以写到多个地方 如另一个handler(墙壁，文件。黑板)
logger.addHandler(file_handler)

# 4、记录一下日志，日志内容
logger.info("这是一个 info 级别的日志")
logger.warning("这是一个 warning 级别的日志")
logger.error("这是一个 error 级别的日志")

# 5、以上步骤，完成了日志写入文件中和控制台，但是日志记录出来的还是默认级别，下面修改日志级别
# 修改日志级别：需要针对 笔（logger）和 笔记本（控制台，文件 即 handler） 去修改



